/* The <dfs.h> contains constants and prototypes for the DFS components */
#ifndef _DFS_H
#define _DFS_H

/* Definitions */
#define DFS_VERSION "0.1"
#define OK 0
#define ERROR -1
#define TRUE 1
#define FALSE 0
#define SHOWVERSION 1
#define DONTSHOWVERSION 0
#define SERVER_ALREADY_INIT 2
#define MAXIPADDRESSLEN 16
#define MINIPADDRESSLEN 7
#define BUFFER_SIZE 512

/* message parameters from /usr/src/servers/dfs/param.h */
#include "/usr/src/servers/dfs/param.h"

#ifndef _TYPES_H
#include <sys/types.h>
#endif

/* Function prototypes */

/* ===== LFI ========== */
_PROTOTYPE( int dfs_add_file,(const char *)     							);
_PROTOTYPE( int dfs_remove_file, (const char *)                             );
_PROTOTYPE( int dfs_list_files, (char*)                                   	);
_PROTOTYPE( int dfs_get_file_path, (const char *,char *)                    );
/* ==== CACHE ====== */
_PROTOTYPE( int dfs_get_cache_path, (const char*,char *)					);
/* ==== NEIGHBOURS ==== */
_PROTOTYPE( int dfs_set_neighbours_address, (const char *,int )  			);
_PROTOTYPE( int dfs_remove_neighbours_address,(const char *)				);
_PROTOTYPE( int dfs_get_neighbours_list,(char *)							);
/* ======= MISC ======= */
_PROTOTYPE( int dfs_start,(void)											);
_PROTOTYPE( int dfs_set_net_components,(pid_t )     						);
_PROTOTYPE( int dfs_stop,(void)												);

#endif
